package org.dromara.basic.service;

import org.dromara.basic.domain.bo.AcademicYearBo;
import org.dromara.basic.domain.vo.AcademicYearVo;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;

import java.util.Collection;
import java.util.List;

/**
 * 学年管理Service接口
 *
 * @author Lion Li
 * @date 2024-11-14
 */
public interface IAcademicYearService {

    /**
     * 查询学年管理
     */
    AcademicYearVo queryById(Long id);

    /**
     * 查询学年管理列表
     */
    TableDataInfo<AcademicYearVo> queryPageList(AcademicYearBo bo, PageQuery pageQuery);

    /**
     * 查询学年管理列表
     */
    List<AcademicYearVo> queryList(AcademicYearBo bo);

    /**
     * 新增学年管理
     */
    Boolean insertByBo(AcademicYearBo bo);

    /**
     * 修改学年管理
     */
    Boolean updateByBo(AcademicYearBo bo);

    /**
     * 校验并批量删除学年管理信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    Boolean switchAcademic(AcademicYearBo bo);
}
